package com.gateway.security.common.authentication.client;

import org.springframework.security.core.AuthenticatedPrincipal;
import org.springframework.security.core.GrantedAuthority;

import java.util.Collection;

/**
 * @program: api-gateway
 * @description:
 * @author: YuKai Fan
 * @create: 2025/2/11 21:08
 **/
public interface ClientPrincipal extends AuthenticatedPrincipal {

    /**
     * 权限信息
     * @return
     */
    Collection<? extends GrantedAuthority> getAuthorities();

    /**
     * 获取客户端主体信息
     * @return
     */
    Object getPrincipal();
}
